package com.atguigu.yygh.common.exception;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
 * 自定义异常处理
 */
@Data
@ApiModel(value = "自定义全局异常")
public class YyghException extends RuntimeException{

    @ApiModelProperty(value = "异常状态码")
    private Integer code;

    @ApiModelProperty("自定义异常信息")
    private String msg;

    /**
     * 抛出自定义异常
     * @param message 错误信息
     * @param code 错误状态码
     */
    public YyghException(Integer code, String message) {
        this.msg = message;
        this.code = code;
    }

    /**
     * 自定义异常附加异常信息，用于抛出异常后，对异常附加自己的异常信息
     *
     * @param code
     * @param e
     */
    public YyghException(Integer code, String message, Exception e) {
        super(e);
        this.msg = message;
        this.code = code;
    }
}
